﻿/***********************************************************************
 * <copyright file="SiteDto.cs" company="B/S JSC">
 * -->    Copyright (C) statement. All right reserved
 * </copyright>
 * 
 * Created:   Hoang Bich Son 
 * Email:    sonhb@newman.vn
 * Website:
 * Create Date: Saturday, March 29, 2014
 * Usage: 
 * 
 * RevisionHistory: 
 * Date         Author               Description 
 * 
 * ************************************************************************/

using System.Collections.Generic;
using System.Runtime.Serialization;
using BusinessSecurity;

namespace SecurityService.DataTransferObjects
{
    /// <summary>
    /// SiteDto
    /// </summary>
    [DataContract(Namespace = "http://www.yourcompany.com/types/")]
    public class SiteDto
    {
        /// <summary>
        /// Gets or sets the identifier.
        /// </summary>
        /// <value>
        /// The identifier.
        /// </value>
        [DataMember]
        public int Id { get; set; }

        /// <summary>
        /// Gets or sets the title.
        /// </summary>
        /// <value>
        /// The title.
        /// </value>
        [DataMember]
        public string Title { get; set; }

        /// <summary>
        /// Gets or sets the description.
        /// </summary>
        /// <value>
        /// The description.
        /// </value>
        [DataMember]
        public string Description { get; set; }

        /// <summary>
        /// Gets or sets the order.
        /// </summary>
        /// <value>
        /// The order.
        /// </value>
        [DataMember]
        public int Order { get; set; }

        /// <summary>
        /// Gets or sets the controller.
        /// </summary>
        /// <value>
        /// The controller.
        /// </value>
        [DataMember]
        public string Controller { get; set; }

        /// <summary>
        /// Gets or sets the parent identifier.
        /// </summary>
        /// <value>
        /// The parent identifier.
        /// </value>
        [DataMember]
        public int? ParentId { get; set; }

        /// <summary>
        /// Gets or sets the status.
        /// </summary>
        /// <value>
        /// The status.
        /// </value>
        [DataMember]
        public bool? Status { get; set; }

        /// <summary>
        /// Gets or sets the is group.
        /// </summary>
        /// <value>
        /// The is group.
        /// </value>
        [DataMember]
        public bool? IsGroup { get; set; }

        /// <summary>
        /// Gets or sets the permission in sites.
        /// </summary>
        /// <value>
        /// The permission in sites.
        /// </value>
        [DataMember]
        public List<PermissionInSite> PermissionInSites { get; set; }

        /// <summary>
        /// Gets or sets the sites.
        /// </summary>
        /// <value>
        /// The sites.
        /// </value>
        [DataMember]
        public List<Site> Sites { get; set; }

        /// <summary>
        /// Gets or sets the role in sites.
        /// </summary>
        /// <value>
        /// The role in sites.
        /// </value>
        [DataMember]
        public List<RoleInSite> RoleInSites { get; set; }
    }
}
